<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>cfa: Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.gif"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">cfa
   </div>
   <div id="projectbrief">Xilinx SDK Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('index.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">cfa Documentation</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>This header file contains identifiers and register-level core functions (or macros), range macros, structure typedefs that can be used to access the Xilinx Color Filter Array Interpolation (CFA) core.The Color Filter Array Interpolation core reconstructs a color image from an RGB or CMY Bayer filtered sensor using a 5x5 interpolation aperture. The core is capable of a maximum resolution of 7680 columns by 7680 rows with 8, 10, or 12 bits per pixel and supports the bandwidth necessary for High-definition (1080p60) resolutions in all Xilinx FPGA device families. Higher resolutions can be supported in Xilinx high-performance device families.</p>
<p><b>Initialization &amp; Configuration</b></p>
<p>The device driver enables higher layer software (e.g., an application) to communicate to the CFA core.</p>
<p><a class="el" href="group__cfa__v7__0.html#gaf21a4a9fe167729fd388e53a9ae467d9" title="This function initializes the CFA core. ">XCfa_CfgInitialize()</a> API is used to initialize the CFA core. The user needs to first call the <a class="el" href="group__cfa__v7__0.html#ga7aa994459d8873cad032c399620e3fd5" title="This function returns a reference to an XCfa_Config structure based on the unique device id...">XCfa_LookupConfig()</a> API which returns the Configuration structure pointer which is passed as a parameter to the <a class="el" href="group__cfa__v7__0.html#gaf21a4a9fe167729fd388e53a9ae467d9" title="This function initializes the CFA core. ">XCfa_CfgInitialize()</a> API.</p>
<p><b> Interrupts </b></p>
<p>The driver provides an interrupt handler XCfa_IntrHandler for handling the interrupt from the CFA core. The users of this driver have to register this handler with the interrupt system and provide the callback functions by using XCfa_SetCallBack API.</p>
<p><b> Virtual Memory </b></p>
<p>This driver supports Virtual Memory. The RTOS is responsible for calculating the correct device base address in Virtual Memory space.</p>
<p><b> Threads </b></p>
<p>This driver is not thread safe. Any needs for threads or thread mutual exclusion must be satisfied by the layer above this driver.</p>
<p><b> Asserts </b></p>
<p>Asserts are used within all Xilinx drivers to enforce constraints on argument values. Asserts can be turned off on a system-wide basis by defining, at compile time, the NDEBUG identifier. By default, asserts are turned on and it is recommended that users leave asserts on during development.</p>
<p><b> Building the driver </b></p>
<p>The <a class="el" href="struct_x_cfa.html" title="The XCfa instance data structure. ">XCfa</a> driver is composed of several source files. This allows the user to build and link only those parts of the driver that are necessary.</p>
<pre>
MODIFICATION HISTORY:</pre><pre>Ver   Who    Date     Changes
<hr/>

1.00a xd     08/05/08 First release
3.00a gz     10/22/10 Updated for CFA V3.0
4.00a rc     09/11/11 Updated for CFA v4.0
5.00a se     12/01/11 Updated for CFA v5.0, replaced xio.h with xil_io.h.
6.0   adk    19/12/13 Updated as per the New Tcl API's.
7.0   adk    01/07/14 Changed the file name from cfa.h to <a class="el" href="xcfa_8h.html">xcfa.h</a>
                      Defined following handler types as enum
                      XCFA_HANDLER_PROCSTART, XCFA_HANDLER_FRAMEDONE,
                      XCFA_HANDLER_ERROR.</pre><pre>                      Defined the BayerPhaseCombination enum
                      for bayerphase combinations.</pre><pre>                      Defined the following macros:
                      XCFA_VSIZE_FIRST, XCFA_VSIZE_LAST
                      XCFA_HSIZE_FIRST, XCFA_HSIZE_LAST
                      XCfa_Start, XCfa_Stop, XCfa_IntrEnable,
                      XCfa_IntrDisable, XCfa_StatusGetPending,
                      XCfa_IntrGetPending, XCfa_IntrClear.</pre><pre>                      Added the following function macros:
                      XCfa_Enable, XCfa_Disable, XCfa_Reset, XCfa_SyncReset,
                      XCfa_RegUpdateEnable, XCfa_RegUpdateDisable.</pre><pre>                      Removed the following functional macros:
                      CFA_Enable, CFA_Disable, CFA_Reset, CFA_FSyncReset,
                      XCFA_RegUpdateEnable, XCFA_RegUpdateDisable,
                      CFA_ClearReset, CFA_ClearStatus.</pre><pre>                      Defined the following type definitions:
                      <a class="el" href="struct_x_cfa___config.html" title="This typedef contains configuration information for the CFA core. ">XCfa_Config</a> and <a class="el" href="struct_x_cfa.html" title="The XCfa instance data structure. ">XCfa</a> structures.
                      XCfa_CallBack and XCfa_ErrorCallBack.</pre><pre>                      Changes in <a class="el" href="xcfa__hw_8h.html">xcfa_hw.h</a>:
                      Added the register offsets and bit masks for the
                      registers and added backward compatibility for macros.</pre><pre>                      Changes in <a class="el" href="xcfa_8c.html">xcfa.c</a>:
                      Renamed this file as below:
                      cfa.c -&gt; <a class="el" href="xcfa_8c.html">xcfa.c</a>
                      Implemented the following functions:
                      XCfa_CfgInitialize, XCfa_Setup, XCfa_GetVersion,
                      XCfa_EnableDbgByPass, XCfa_IsDbgByPassEnabled,
                      XCfa_DisableDbgBypass, XCfa_EnableDbgTestPattern,
                      XCfa_IsDbgTestPatternEnabled,
                      XCfa_DisableDbgTestPattern, XCfa_GetDbgFrameCount,
                      XCfa_GetDbgLineCount, XCfa_GetDbgPixelCount,
                      XCfa_SetActiveSize, XCfa_GetActiveSize,
                      XCfa_SetBayerPhase, XCfa_GetBayerPhase,
                      StubCallBack, StubErrCallBack.</pre><pre>                      Changes in  <a class="el" href="xcfa__intr_8c.html">xcfa_intr.c</a>:
                      Implemented the following functions:
                      XCfa_IntrHandler, XCfa_SetCallBack.</pre><pre>                      Changes in <a class="el" href="xcfa__selftest_8c.html">xcfa_selftest.c</a>:
                      Implemented XCfa_SelfTest function.</pre><pre>                      Changes in <a class="el" href="xcfa__sinit_8c.html">xcfa_sinit.c</a> :
                      Implemented XCfa_LookupConfig function.
7.1   ms     01/16/17 Updated the parameter naming from
                      XPAR_CFA_NUM_INSTANCES to XPAR_XCFA_NUM_INSTANCES
                      to avoid  compilation failure for
                      XPAR_CFA_NUM_INSTANCES as the tools are generating
                      XPAR_XCFA_NUM_INSTANCES in the generated xcfa_g.c
                      for fixing MISRA-C files. This is a fix for
                      CR-966099 based on the update in the tools.
      ms     01/23/17 Added xil_printf statement in main function for all
                    examples to ensure that "Successfully ran" and "Failed"
                    strings are available in all examples. This is a fix
                    for CR-965028.
      ms     03/17/17 Added readme.txt file in examples folder for doxygen
                      generation.
</pre> </div></div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Copyright &copy; 2015 Xilinx Inc. All rights reserved.</li>
  </ul>
</div>
</body>
</html>
